Industrial control systems used to control and monitor industrial processes often employ programmable logic controllers, which are special purpose computers that operate based upon stored control programs and typically read inputs and provide outputs to the controlled industrial processes based upon the logic of their control programs. PLCs differ from conventional computers in two major respects. First, PLCs operate to produce highly reliable and predictable control outputs. The architecture and programming of PLCs are designed so as to provide predictable maximum response times, as well as a reduction in errors caused by race conditions and sensitive detection of hardware and communication errors. Second, PLCs differ from conventional computers in that PLCs are highly customizable so as to fit the demands of the particular industrial processes being controlled.
Depending upon the particular industrial process being controlled, an industrial control system can take a variety of forms. In some circumstances, the industrial control system includes numerous I/O modules that are all in communication with a single PLC. In other circumstances, multiple PLCs are employed in the industrial control system. The multiple PLCs can be networked together, and each PLC is typically in communication with its own particular associated I/O modules. In still additional circumstances, industrial control systems can take other forms that can include, for example, other types of control devices.
Although it is the PLCs of industrial control systems that primarily govern the operation of the industrial control systems with respect to the industrial processes of interest, in a variety of circumstances it is desirable to be able to remotely monitor (and, in some instances, control) the operation of the industrial control systems and the progress of the industrial processes. Conventional industrial control systems allow for communications between PLCs and remote human machine interfaces such as computer terminals by way of proprietary communication links or dedicated phone lines.
However, recently a new communications medium known as the Internet or World Wide Web (or simply the “web”) has emerged as an important if not dominant communications medium for networking among computers and computer systems around the world. Given the ubiquity and simplicity of using the web, it has become desirable that industrial control systems be capable of communications with remote computer terminals or other remote devices by way of the web.
Yet conventional industrial control systems are not readily configured for web communications. On the one hand, the control devices commonly implemented within industrial control systems typically do not have the large amounts of memory and processing powers that are necessary for implementation of web server programs/applications. On the other hand, implementation of a single web server program for an entire industrial control system can impose significant programming burdens, particularly when the operation or configuration of the individual control devices is frequently changing. In practice, implementation of a single web server for an entire industrial control system can render it difficult to provide sufficient independent accessibility of the individual control devices of the industrial control system
It would therefore be advantageous if a new industrial control system could be developed that allowed remote computer terminals and other remote devices to communicate with individual control devices of the industrial control system by way of the web. It would also be advantageous if the new industrial control system allowed web communications with the various individual PLCs, I/O modules and/or other control devices of the industrial control system despite any memory or processing power limitations of those control devices.